/*
 * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
 * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 *
 */

package java.io;

import java.io.IOException;

/**
 * Closeable是可以关闭的数据源或目标。
 * close方法被调用来释放对象所保存的资源(比如打开的文件)。
 *
 * @since 1.5
 */
public interface Closeable extends AutoCloseable {

    /**
     * 关闭此流并释放与之关联的任何系统资源。
     * 如果流已经关闭，那么调用此方法将不起作用。
     *
     * <p>如AutoCloseable .close()中所指出的，对于可能失败的情况，需要仔细注意。
     * 强烈建议放弃底层资源，并在内部将关闭标记为closed，然后再抛出IOException。
     *
     * @throws IOException if an I/O error occurs
     */
    public void close() throws IOException;
}
